Vue 'watch' Option
Example
একটি <input type="range"> দিয়ে 20 এবং 70 এর মধ্যে মান নির্বাচন করা অসম্ভব করতে ঘড়ি বিকল্পের ভিতরে একটি প্রহরী ব্যবহার করা
export default {
data() {
return {
rangeVal: 4
};
},
watch: {
rangeVal(val) {
if( val>20 && val<70) {
if(val<40){
this.rangeVal = 20;
}
else {
this.rangeVal = 70;
}
}
}
}
};
Definition and Usage
ঘড়ির বিকল্পটি এমন একটি বস্তু যাতে Vue ইনস্ট্যান্সে ঘোষিত সমস্ত প্রহরী থাকে।
একটি পর্যবেক্ষক একটি ফাংশন যে একটি ডেটা সম্পত্তি বা একটি গণনা সম্পত্তি হিসাবে একই নাম আছে. যখনই একই নামের কোনো সম্পত্তি পরিবর্তিত হয় তখন পর্যবেক্ষককে স্বয়ংক্রিয়ভাবে ডাকা হয়।
যখন একজন পর্যবেক্ষককে ডাকা হয়, তখন নতুন এবং পূর্ববর্তী মানগুলি পর্যবেক্ষক ফাংশনের আর্গুমেন্ট হিসাবে উপলব্ধ থাকে।
একজন প্রহরী একটি বিন্দু-বিচ্ছিন্ন পথও হতে পারে, যেমন tiger.weight, যাতে প্রহরীকে তখনই ডাকা হয় যখন বাঘের বস্তুর ওজন বৈশিষ্ট্য পরিবর্তন হয়।
দ্রষ্টব্য:
পর্যবেক্ষক ঘোষণা করার সময় তীর ফাংশনগুলি এড়ানো উচিত, কারণ এই কীওয়ার্ডটি ব্যবহার করে এই জাতীয় ফাংশনের মধ্যে থেকে Vue ইনস্ট্যান্স অ্যাক্সেস করা যায় না।
অবজেক্ট সিনট্যাক্স ব্যবহার করে পর্যবেক্ষক লেখার সময় (নীচে উদাহরণ দেখুন), এই বিকল্পগুলি উপলব্ধ:
| বিকল্প | ব্যাখ্যা |
|---|---|
| handler | এখানে watcher ফাংশন লেখা হয়. |
| 'method name' | একজন পর্যবেক্ষককে স্ট্রিং হিসাবে পদ্ধতির নাম প্রদান করে একটি পদ্ধতিকে কল করার জন্য সেট করা যেতে পারে। |
| deep | ডিফল্ট মান 'মিথ্যা'। যদি পর্যবেক্ষক গভীর হয়, তবে এটি পর্যবেক্ষকের সেট করা বৈশিষ্ট্যের পরিবর্তনের জন্যও কাজ করে। |
| immediate | ডিফল্ট মান 'মিথ্যা'। প্রহরী তৈরি হওয়ার পরপরই প্রহরীকে ট্রিগার করে। যখন 'অবিলম্বে' 'সত্য' তে সেট করা হয় তখন ডিফল্ট মান 'অনির্ধারিত' হয় যখন প্রথমবার প্রহরীকে আহ্বান করা হয়। |
| flush | ডিফল্ট মান হল 'প্রাক'। কম্পোনেন্ট রেন্ডার করার সময় কলব্যাক ফাংশনটি কখন কার্যকর করা উচিত তা নির্দিষ্ট করুন। সম্ভাব্য মানগুলি হল 'প্রাক', 'পোস্ট' এবং 'সিঙ্ক'। সাবধানতার সাথে এই ফ্লাশ বিকল্পটি ব্যবহার করুন। |
| onTrigger/onTrack | debuckling জন্য ব্যবহৃত. শুধুমাত্র উন্নয়ন মোডে কাজ করে। |
দ্রষ্টব্য:
$watch() পদ্ধতি ব্যবহার করেও প্রহরী তৈরি করা যেতে পারে।
More Examples
Example
অবজেক্ট সিনট্যাক্স সহ একটি প্রহরী ব্যবহার করা
<template>
<h2>Example watch Option</h2>
<p>The 'rangeVal' watcher is written with the object syntax, with immediate: true, so that rangeVal is moved to '70' when the page first loads:</p>
<input type="range" v-model="rangeVal">
<p>rangeVal: <span>{{ rangeVal }}</span></p>
</template>
<script>
export default {
data() {
return {
rangeVal: 40
};
},
watch: {
rangeVal: {
handler(val) {
if (val > 20 && val < 70) {
if (val < 40) {
this.rangeVal = 20;
}
else {
this.rangeVal = 70;
}
}
},
immediate: true
}
}
};
</script>
<style>
span {
padding: 3px;
font-weight: bold;
font-family: 'Courier New', Courier, monospace;
background-color: lightgreen;
}
</style>
Vue Exercises
Vue 'ওয়াচ' বিকল্প সম্পর্কে আপনার জ্ঞান পরীক্ষা করতে এই টিউটোরিয়ালটি চেষ্টা করুন।